package com.zdp.agent;

import java.lang.instrument.Instrumentation;

/**
 * @author Zhengdp
 * @date 2023年02月01日 17:40
 */
public class MonitorAgent {
    /**
     * 探针方法 --> 方法签名需要符合规定
     * @param agentArgs
     * @param inst
     */
    public static void premain(String agentArgs, Instrumentation inst){
        System.out.println(String.format("******** AgentApplication.premain executing， String Param: {%s}********",agentArgs));
        inst.addTransformer(new AddMethodClassFileTransformer(), true);
        // 打印已加载类名
//        Class[] classes = inst.getAllLoadedClasses();
//        for(Class clazz :classes){
//            System.out.println(clazz.getName());
//        }
        System.out.println("******** AgentApplication premain executed ********");
    }
}
